iT邦幫忙

2023 iThome 鐵人賽

DAY 23
0
Security

我推的資安系列 第 23

我推的資安Day23_混和式密碼系統Diffie-Hellman(2/2)

  • 分享至 

  • xImage
  •  

昨天介紹了混和式密碼其中的數位信封,今天要介紹

Diffie-Hellman key exchange

Diffie-Hellman的方法在公開金鑰密碼上使用很多,也就是說可以結合RSA、ECC,這在SSL\TLS (傳輸層安全性協定)很常見。相信大家都知道https~


Diffie-Hellman key exchange的作法很簡單:
我們先假設是最原始的,有2個人A和B。

  1. A選擇一個亂數a,並計算https://chart.googleapis.com/chart?cht=tx&chl=Y_a = https://chart.googleapis.com/chart?cht=tx&chl=g%5Ea mod Phttps://chart.googleapis.com/chart?cht=tx&chl=Y_a 傳給B。
  2. B選擇一個亂數b,並計算https://chart.googleapis.com/chart?cht=tx&chl=Y_b = https://chart.googleapis.com/chart?cht=tx&chl=g%5Eb mod Phttps://chart.googleapis.com/chart?cht=tx&chl=Y_b 傳給A。 收到A傳的https://chart.googleapis.com/chart?cht=tx&chl=Y_a 就能計算https://chart.googleapis.com/chart?cht=tx&chl=SK_b = https://chart.googleapis.com/chart?cht=tx&chl=Y%5Eb_a mod P。(這邊的https://chart.googleapis.com/chart?cht=tx&chl=SK_b 就是session key了)。
  3. 同理,A收到B的https://chart.googleapis.com/chart?cht=tx&chl=Y_b 後,計算https://chart.googleapis.com/chart?cht=tx&chl=SK_a = https://chart.googleapis.com/chart?cht=tx&chl=Y%5Ea_b mod P。(這邊的https://chart.googleapis.com/chart?cht=tx&chl=SK_a 就是session key了)

到這邊Diffie-Hellman key exchange就結束了。
(https://chart.googleapis.com/chart?cht=tx&chl=SK_a = https://chart.googleapis.com/chart?cht=tx&chl=SK_b = https://chart.googleapis.com/chart?cht=tx&chl=g%5Ea%5Eb mod P )


我們可以知道Diffie-Hellman key exchange很像ElGamal都是解離散對數,知道https://chart.googleapis.com/chart?cht=tx&chl=Y_ahttps://chart.googleapis.com/chart?cht=tx&chl=Y_b 很難求出SK

SK(session key)可以稱為會話金鑰常用於做一次性的加解密。比如說在這次的開會,所有參加會議的人都可以使用同一把金鑰做加密跟解密的動作,下次會議就無法使用上一次的金鑰。


上一篇
我推的資安Day22_混和式密碼系統數位信封(1/2)
下一篇
我推的資安Day24_機密分享Secret Sharing
系列文
我推的資安30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言